package com.jason.system.service;

import com.jason.system.common.util.Pager;
import com.jason.system.entity.Number;
import io.swagger.models.auth.In;
import org.apache.ibatis.annotations.Param;

import java.util.Date;
import java.util.List;

/**
 * @author jie
 * @version 1.0
 * success come from self-discipline
 * @date 2021/3/25 17:15
 */
public interface NumberService {

  /**
   * 查找所有电话号码
   * @param page 页数
   * @param size 每页个数
   * @return Pager<Number>
   */
  Pager<Number> getAllNumbers(Integer page , Integer size);


  /**
   * 根据条件查询电话
   * @param address 地址
   * @param stuName 学习姓名
   * @param page 页数
   * @param size 每页个数
   * @return Pager<Number>
   */
  Pager<Number> searchNumbers(Integer page , Integer size ,String address, String stuName);

  /**
   * 查找所有电话号码
   * @param page 页数
   * @param size 每页个数
   * @param startTime 开始时间
   * @param endTime 截止时间
   * @return List<Number>
   */
  Pager<Number> getAllNumbersByTime(Integer page , Integer size, Date startTime, Date endTime);

  /**
   * 根据nid查询电话
   * @param number 电话信息
   * @return Number
   */
  Number getNumber(String number);

  /**
   * 添加电话
   * @param number 电话信息
   */
  void insertNumber(Number number);

  /**
   * 修改电话信息
   * @param number 电话信息
   */
  void updateNumber(Number number);

  /**
   * 根据主键删除电话
   * @param nId 电话id
   * @return true or false
   */
  boolean deleteNumber(Integer nId);

  /**
   * 批量删除电话
   * @param nIds 电话ids,String集合，以逗号分割
   * @return true or false
   */
  boolean deleteNumbers(String nIds);
}
